﻿/// <reference path="../Core.ts" />

module Supernova {

    export class NameGenerator {

        private static lookup: any = {
            start: ['Am', 'B', 'C', 'Cop', 'D', 'Den', 'Ef', 'F', 'G', 'Gim', 'H', 'Hop', 'Ig', 'Is', 'J', 'Jaw', 'K', 'Kal', 'L', 'Lap', 'M', 'N', 'Op', 'Os', 'P', 'Pop', 'R', 'Rat', 'S', 'Sat', 'T', 'Um', 'V', 'Vet', 'W', 'War', 'Y', 'Yuc', 'Z'],
            middle: ['ah', 'ar', 'ai', 'ans', 'ao', 'ei', 'enu', 'epa', 'epe', 'ea', 'im', 'ing', 'in', 'is', 'iw', 'oh', 'ol', 'ow', 'of', 'ul', 'uh', 'ua', 'up'],
            end: ['b', 'c', 'd', 'e', 'f', 'g', 'k', 'l', 'm', 'n', 'op', 's', 'ot', 'iv', 'ow', 'x']
        }

        public static generateName(): string {
            return this.lookup.start[randomInt(0, this.lookup.start.length - 1)] +
                   this.lookup.middle[randomInt(0, this.lookup.middle.length - 1)] +
                   this.lookup.end[randomInt(0, this.lookup.end.length - 1)];
        }
         
    }

}